def build(bld):

    bld.externalcomponent(target          = "rcx_netx100_2portswitch",
                          path            = "lib/netx100",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx100_2portswitch",
                          description     = "rcX netX100/500 2-Port-Switch driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld(name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_sdk",
        SDK             = True,
        description     = "rcX Kernel SDK",
        displaygroup    = "rcX V2.1",
        version         = "2.1.11.8",
        export_includes = ["Includes/API", "Includes/Configuration", "Includes/TLR", ],
        export_defines  = ["__RCX__", ],
       )

    bld.externalcomponent(target          = "rcx_netx51",
                          path            = "lib/netx51",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx51",
                          description     = "rcX netX51/52 driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/CPUs/netX51", ],
                          export_defines  = ["__NETX51", ],
                         )

    bld.externalcomponent(target          = "rcx_netx50",
                          path            = "lib/netx50",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx50",
                          description     = "rcX netX50 driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/CPUs/netX50", ],
                          export_defines  = ["__NETX50", ],
                         )

    bld.externalcomponent(target          = "rcx_module",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_module_netx51",
                          description     = "rcX Module interface library (netX51)",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/API", "Includes/Configuration", "Includes/TLR", "Includes/CPUs/netX51", ],
                          export_defines  = ["__RCX__", "__NETX51", ],
                         )

    bld.externalcomponent(target          = "rcx_module",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_module_netx50",
                          description     = "rcX Module interface library (netX50)",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/API", "Includes/Configuration", "Includes/TLR", "Includes/CPUs/netX50", ],
                          export_defines  = ["__RCX__", "__NETX50", ],
                         )

    bld(name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx100_sdk",
        SDK             = True,
        description     = "rcX netX100/500 SDK",
        displaygroup    = "rcX V2.1",
        version         = "2.1.11.8",
        export_includes = ["Includes/CPUs/netX100", ],
        export_defines  = ["__NETX100", ],
       )

    bld.externalcomponent(target          = "rcx_netx50_physhif",
                          path            = "lib/netx50",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx50_physhif",
                          description     = "rcX netX50 Physical HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_netx10_hif",
                          path            = "lib/netx10",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx10_hif",
                          description     = "rcX netX10 HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_midshm",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_midshm",
                          description     = "rcX SHM-API Middleware library (for netPLC)",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_netx51_physhif",
                          path            = "lib/netx51",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx51_physhif",
                          description     = "rcX netX51/52 Physical HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_netx100_physhif",
                          path            = "lib/netx100",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx100_physhif",
                          description     = "rcX netX100/500 Physical HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_mid",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_mid",
                          description     = "rcX Middleware library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_bas",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_bas",
                          description     = "rcX Base Firmware Add-ons library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_netx10",
                          path            = "lib/netx10",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx10",
                          description     = "rcX netX10 driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/CPUs/netX10", ],
                          export_defines  = ["__NETX10", ],
                         )

    bld.externalcomponent(target          = "rcx_netx100_hif",
                          path            = "lib/netx100",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx100_hif",
                          description     = "rcX netX100/500 HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld(name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx50_sdk",
        SDK             = True,
        description     = "rcX netX50 SDK",
        displaygroup    = "rcX V2.1",
        version         = "2.1.11.8",
        export_includes = ["Includes/CPUs/netX50", ],
        export_defines  = ["__NETX50", ],
       )

    bld(name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx51_sdk",
        SDK             = True,
        description     = "rcX netX51/52 SDK",
        displaygroup    = "rcX V2.1",
        version         = "2.1.11.8",
        export_includes = ["Includes/CPUs/netX51", ],
        export_defines  = ["__NETX51", ],
       )

    bld.externalcomponent(target          = "rcx_module",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_module",
                          description     = "rcX Module interface library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/API", "Includes/Configuration", "Includes/TLR", ],
                          export_defines  = ["__RCX__", ],
                         )

    bld.externalcomponent(target          = "rcx_netx50_hif",
                          path            = "lib/netx50",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx50_hif",
                          description     = "rcX netX50 HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "c_module",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/c_module",
                          description     = "rcX libc Module interface library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_netx51_hif",
                          path            = "lib/netx51",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx51_hif",
                          description     = "rcX netX51/52 HIF driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx_netx100",
                          path            = "lib/netx100",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx100",
                          description     = "rcX netX100/500 driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/CPUs/netX100", ],
                          export_defines  = ["__NETX100", ],
                         )

    bld.externalcomponent(target          = "rcx_netx50_2portswitch",
                          path            = "lib/netx50",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx50_2portswitch",
                          description     = "rcX netX50 2-Port-Switch driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld(name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx10_sdk",
        SDK             = True,
        description     = "rcX netX10 SDK",
        displaygroup    = "rcX V2.1",
        version         = "2.1.11.8",
        export_includes = ["Includes/CPUs/netX10", ],
        export_defines  = ["__NETX10", ],
       )

    bld.externalcomponent(target          = "rcx_hif_cifx",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_hif_cifx",
                          description     = "rcX Shared Memory API library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/SHM_API", ],
                         )

    bld.externalcomponent(target          = "rcx_module",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_module_netx100",
                          description     = "rcX Module interface library (netX100/500)",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/API", "Includes/Configuration", "Includes/TLR", "Includes/CPUs/netX100", ],
                          export_defines  = ["__RCX__", "__NETX100", ],
                         )

    bld.externalcomponent(target          = "rcx_vol",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_vol",
                          description     = "rcX Volume library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

    bld.externalcomponent(target          = "rcx",
                          path            = "lib",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx",
                          description     = "rcX Kernel library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                          export_includes = ["Includes/API", "Includes/Configuration", "Includes/TLR", ],
                          export_defines  = ["__RCX__", ],
                         )

    bld.externalcomponent(target          = "rcx_netx51_2portswitch",
                          path            = "lib/netx51",
                          name            = "arm-none-eabi/4.5.2/rcX_V2.1/rcx_netx51_2portswitch",
                          description     = "rcX netX51/52 2-Port-Switch driver library",
                          displaygroup    = "rcX V2.1",
                          version         = "2.1.11.8",
                         )

